package com.ssm.card.rpc.service.impl.unit;

import com.ssm.card.dao.mapper.unit.UnitDao;
import com.ssm.card.dao.model.unit.Unit;
import com.ssm.card.rpc.api.unit.UnitService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
* 单元管理 Service
* @author GaoXiang
* @version 1.0
*/
@Service
public class UnitServiceImpl implements UnitService {

    @Resource
    private UnitDao unitDao;

/*
    @Resource
    private ResidenceDao residenceDao;

    @Resource
    private BuildingDao buildingDao;

    */
/**
    * 保存数据
    * @param unit 实体对象
    * @return 实体id
    * @throws Exception 数据保存异常
    *//*

    public Integer insert(Unit unit) throws Exception {
        return unitDao.insert(unit);
    }

    */
/**
    * 根据 id 修改
    * @param unit 带id的实体对象
    * @return 受影响的行数
    * @throws Exception 数据修改异常
    *//*

    public Integer updateById(Unit unit) throws Exception {
        return unitDao.updateById(unit);
    }

    */
/**
    * 根据 id 删除
    * @param id 数据id
    * @return 受影响的行数
    * @throws Exception 数据删除异常
    *//*

    public Integer deleteById(String id) throws Exception {
        return unitDao.deleteById(id);
    }
*/

    /**
    * 根据 id 查找
    * @param id 实体id
    * @return 实体
    */
    public Unit selectById(String id) {
        return unitDao.selectById(id);
    }

 /*   *//**
    * 根据 id 批量删除
    * @param ids 要删除的id
    * @return 影响的行数
    * @throws Exception 数据删除异常
    *//*
    public Integer deleteByIds(List<String> ids) throws Exception {
        return unitDao.deleteByIds(ids);
    }

    *//**
    * 查询列表
    * @param map 参数
    * @return 列表
    *//*
    public PageInfo<Unit> list(Map map) {
        return unitDao.list(map);
    }

    *//**
    * 查询列表 带分页
    * @param map 参数
    * @param page 页码
    * @param size 每页大小
    * @return 列表
    *//*
    public PageInfo<Unit> list(Map map, int page, int size) {
        return unitDao.list(map,page,size);
    }



    public List<Unit> chooseList(String buildingId){
        return  unitDao.chooseList(buildingId);
    }

    public Long count(Map map){
        return  unitDao.count(map);
    }


    public List<Unit> findByResidenceId(String residenceId) {
        return unitDao.findByResidenceId(residenceId);
    }

    public List<Unit> findAllBuild(Unit unit){
        return unitDao.findAllBuild(unit);
    }

    public Unit countNumber(Unit unit) {
        return unitDao.countNumber(unit);
    }

    public List<Unit> chooseUnit(String buildingId){return unitDao.chooseUnit(buildingId);}

    public List<Unit> findName(Unit unit){
        return unitDao.findName(unit);
    }

    public List<Unit> findByBuildingId(String buildingId) {
        return unitDao.findByBuildingId(buildingId);
    }

    public List<Unit> findByBuildingIdCaidId(Card card) {
        return unitDao.findByBuildingIdCaidId(card);
    }

    *//**
     * 不带分页的查询
     * 2017-5-22 11:42:34 韩榕榕
     * @param map 参数
     * @return 集合
     *//*
    public List<Unit> listWithoutPage(Map map) {
        List<Unit> unitList = unitDao.listWithoutPage(map);
        if (unitList.size() > 0) {
            for (Unit unit : unitList) {
                unit.setResidenceName(residenceDao.selectById(unit.getResidenceId()).getName());
                unit.setResidenceNumber(residenceDao.selectById(unit.getResidenceId()).getCode());
                unit.setBuildingNumber(buildingDao.selectById(unit.getBuildingId()).getNumber());
            }
        }
            return unitList;
    }

    *//**
     * 根据小区id删除单元
     * @param id
     * @return
     * @throws Exception
     *//*
    public Integer deleteByResidenceId(String id) throws Exception{
        return unitDao.deleteByResidenceId(id);
    }

    *//**
     * 根据楼栋id删除单元
     * @param id
     * @return
     *//*
    public Integer deleteByBuildingId(String id) throws Exception{
        return unitDao.deleteByBuildingId(id);

    }

    *//**
     * 根据单元的编号查询
     * 2017-05-22 17:32:08 韩榕榕
     * @param map 参数
     * @return 实体
     *//*
    public Unit selectByunitNumber(Map map){return unitDao.selectByunitNumber(map);}
    *//**
     * 2017年6月16日 闫增宝   查询单元
     * @param equipmentId 门禁id
     * @return
     *//*
    public Unit selectByEquipmentId(String equipmentId) {
        return unitDao.selectByEquipmentId(equipmentId);
    }*/
}
